Printer, drive control method, and motor control program for printer

ABSTRACT

A printer includes a motor, a position calculation unit, a speed calculation unit, a position control unit, a speed control unit, and a switching unit. The motor generates a driving force by which a transported object is transported. The position calculation unit calculates a current position of the transported object through driving the motor. The speed calculation unit calculates a current speed of the transported object through driving the motor. The position control unit controls the motor using at least PI control on the basis of the current position calculated by the position calculation unit and a target position. The speed control unit controls the motor using at least PI control on the basis of the current speed calculated by the speed calculation unit and a target speed. The switching unit switches from control of the motor using the speed control unit to control of the motor using the position control unit at a position that is a predetermined distance before a target stop position to which the motor is driven.

BACKGROUND

1. Technical Field

The present invention relates to a printer, a drive control method, and a motor control program for a printer.

2. Related Art

An ink jet printer includes a transport drive roller, transport driven roller, and the like, for transporting a printed medium. The transport drive roller is driven by a motor (hereinafter, referred to as PF motor 31), such as DC motor. The drive control for the PF motor 31 mostly employs a PID control that uses a proportional element, an integral element and a derivative element in combination. In the PID control, a speed deviation (speed difference) between a target speed and an actual speed is calculated, a proportional element, an integral element and a derivative element are calculated on the basis of the speed deviation, and then a control value (duty ratio) of the PF motor 31 is determined (see JP-A-2006-240212, JP-A-2003-48351, and JP-A-2003-79177).

In the above PID control, a control value is determined on the basis of the speed deviation; however, the target speed varies depending on a position to be reached. As the target position is reached, a duty ratio applied to the PF motor 31 is set to a duty ratio at the time when the PF motor 31 is stopped. In this case, there is no feedback as to whether the PF motor 31 is actually stopped at the target position, which causes an inaccurate stop position. In addition, a response to load fluctuations on the PF motor 31 is poor, resulting in an inaccurate stop position. Thus, an obtained image quality is not favorable.

SUMMARY

An advantage of some aspects of the invention is that it provides a printer, a drive control method and a motor control program, which provide an accurate stop position to make it possible to obtain a favorable image quality.

An aspect of the invention provides a printer. The printer includes a motor, a position calculation unit, a speed calculation unit, a position control unit, a speed control unit, and a switching unit. The motor generates a driving force by which a transported object is transported. The position calculation unit calculates a current position of the transported object through driving the motor. The speed calculation unit calculates a current speed of the transported object through driving the motor. The position control unit controls the motor using at least PI control on the basis of the current position calculated by the position calculation unit and a target position. The speed control unit controls the motor using at least PI control on the basis of the current speed calculated by the speed calculation unit and a target speed. The switching unit switches from control of the motor using the speed control unit to control of the motor using the position control unit at a position that is a predetermined distance before a target stop position to which the motor is driven.

With the above configuration, owing to the switching unit, the motor is switched from at least PI control using the speed control unit to at least PI control using the position control unit. Thus, it is possible to obtain a favorable stop position accuracy of the motor. In addition, because control is performed using the position control unit after switching by the switching unit, even when a load fluctuates, it is possible to obtain a favorable stop position accuracy.

In the above aspect of the invention, in the position control unit and the speed control unit, gains in both the control units may be adapted to each other.

With the above configuration, owing to adaptation of the gains, favorable switching may be performed by the switching unit. Thus, fluctuations in speed of the motor at the time of switching are reduced, so that it is possible to obtain a favorable stop position accuracy of the motor. In addition, with the favorable stop position accuracy, it is possible to obtain favorable print quality.

Furthermore, in the above aspect of the invention, the adaptation may be performed on the basis of adjustment of a deviation in the position control unit with a deviation in the speed control unit.

With the above configuration, by adjusting a difference between both deviations, it is possible to reduce fluctuations in speed of the motor at the time of switching.

In addition, in the above aspect of the invention, the switching unit may switch from control of the motor using the speed control unit to control of the motor using the position control unit when the current position calculated by the position calculation unit reaches a portion that is a predetermined distance from the target stop position.

With the above configuration, by calculating that a portion that is a predetermined distance from the target stop position is reached using the position calculation unit, control of the motor is switched by the switching unit from the speed control unit to the position control unit. Thus, a reliable switching may be achieved.

Furthermore, in the above aspect of the invention, the transported object may be a printed medium having a size that is at least larger than or equal to A3 size.

With the above configuration, in a large-sized printed medium of which a tension or a load at the time of transporting is particularly large, it is possible to obtain a favorable stop position accuracy. Thus, for a large-sized printed medium, it is possible to obtain a favorable print quality.

Another aspect of the invention provides a drive control method for controlling a motor that generates a driving force by which a transported object is transported. The drive control method includes: controlling the motor using at least PI control on the basis of a current speed of the transported object calculated by a speed calculation unit and a target speed; detecting whether a portion that is a predetermined distance before a target stop position to which the motor is driven is reached; and controlling the motor using at least PI control on the basis of a current position of the transported object calculated by a position calculation unit and a target position when it is detected that the position that is a predetermined distance before the target stop position is reached.

With the above configuration, when it is detected that the position that is a predetermined distance before the target stop position is reached, the motor is switched from at least PI control using the calculated current speed and the target speed to at least PI control using the calculated current position and the target position. Thus, it is possible to obtain a favorable stop position accuracy of the motor. In addition, because control is performed using the calculated current position and the target position after switching, even when a load fluctuates, it is possible to obtain a favorable stop position accuracy.

Further another aspect of the invention provides a computer readable storage medium storing a motor control program for a printer. The program includes instructions for: calculating a current position of a transported object through driving a motor that generates a driving force by which a transported object is transported; calculating a current speed of the transported object through driving the motor; controlling the motor using at least PI control on the basis of the calculated current position and a target position; controlling the motor using at least PI control on the basis of the calculated current speed and a target speed; and switching from control of the motor using at least PI control on the basis of the calculated current speed and the target speed to control of the motor using the calculated current position and the target position at a portion that is a predetermined distance before a target stop position to which the motor is driven.

With the above configuration, owing to the switching of control of the motor, the motor is switched from at least PI control using the calculated current speed and the target speed to at least PI control using the calculated current position and the target position. Thus, it is possible to obtain a favorable stop position accuracy of the motor. In addition, because control is performed using the calculated current position and the target position after switching, even when a load fluctuates, it is possible to obtain a favorable stop position accuracy.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described with reference to the accompanying drawings, wherein like numbers reference like elements.

FIG. 1 is a schematic view that shows a side configuration of a printer according to an embodiment of the invention.

FIG. 2 is a perspective view that shows an external appearance of a rear paper feeding mechanism of the printer shown in FIG. 1.

FIG. 3A and FIG. 3B are views that show ENC signals.

FIG. 4 is a block diagram that shows a schematic configuration of a speed control unit.

FIG. 5 is a block diagram that shows a schematic configuration of a position control unit.

FIG. 6 is a view that shows the relationship between a speed and a position in a speed table.

FIG. 7A and FIG. 7B are views that show a state in which a positional deviation is 1.5 times as large as a speed deviation when switching from the speed control to the position control.

FIG. 8A and FIG. 8B are views that show a state in which a positional deviation is 0.5 times as large as a speed deviation when switching from the speed control to the position control.

FIG. 9A and FIG. 9B are views that show a state in which a difference between a position deviation and a speed deviation is 0 when switching from the speed control to the position control.

FIG. 10 is a table that illustrates the accuracy of a stop position of a PF motor.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

Hereinafter, a printer 10 that includes a motor control device (mainly, control unit 100) and a drive control method according to an embodiment of the invention will be described with reference to FIG. 1 to FIG. 9B. Note that the printer 10 of the present embodiment is an ink jet printer; however, the ink jet printer may be a device that employs any liquid discharging method as far as it is a device capable of performing printing by discharging ink.

In addition, the printer 10 according to the present embodiment is a printer that is able to perform printing on a printed medium P larger than or equal to A3 size (so-called large-sized sheet); instead, the printer 10 may be a printer that performs printing on only a printed medium P smaller than or equal to A3 size.

In addition, in the following description, the lower side corresponds to a side where the printer 10 is mounted and the upper side corresponds to a side that is located away from the side where the printer 10 is mounted. Furthermore, a side from which the printed medium P is fed is defined as a paper feed side (rear end side), and a side from which the printed medium P is ejected is defined as a paper ejection side (front end side).

Schematic Configuration of Printer 10

As shown in FIG. 1, the printer 10 includes a case (not shown), a carriage drive unit 20, a paper transport unit 30, a rotary encoder 40, a linear encoder 50, and a control unit 100, as main components.

Of these elements, the carriage drive unit 20 includes a carriage 21, a carriage motor (CR motor 22), a belt 23, a gear pulley 24, a driven pulley 25, and a carriage shaft 26. The carriage 21 allows ink cartridges 27 for respective colors to be mounted thereon. In addition, as shown in FIG. 1 and FIG. 2, a print head 28 that is able to discharge ink droplets is provided on the lower face of the carriage 21. Further, the belt 23 is an endless belt and is partially fixed to the back face of the carriage 21. The belt 23 is looped around the gear pulley 24 and the driven pulley 25.

The print head 28 is provided with columns of nozzles (not shown) corresponding to the respective inks. Piezoelectric elements (not shown) are arranged at positions corresponding to the nozzles that form the columns of nozzles. Ink droplets may be discharged from the nozzles located at the ends of ink passages by these piezoelectric elements being operated. Note that the print head 28 is not limited to a piezoelectric drive-type that uses piezoelectric elements; the print head 28 may employ, for example, a heater-type that utilizes a force of bubbles generated by heating ink, a magnetostriction-type that uses a magnetostrictor, a mist-type in which ink mist is controlled with electric field, or the like. In addition, the inks with which the ink cartridges 27 are filled may be of any types, such as dye ink or pigment ink.

As shown in FIG. 1, or the like, the paper transport unit 30 includes a PF motor 31 and a paper feed roller 32. The PF motor 31, which serves as a motor and a transporting motor, transports a printed medium P, which may be regarded as a transported object. The paper feed roller 32 feeds pieces of paper, such as plain paper. In addition, a pair of PF rollers 33 is provided on the paper ejection side with respect to the paper feed roller 32 for transporting and pinching the printed medium P. Further, on the paper delivery side of the pair of PF rollers 33, a platen 34 and the above described print head 28 are arranged one above the other and are opposite each other. The platen 34, which corresponds to a mounting portion, supports, from its lower side, the printed medium P that is transported to below the print head 28 by the pair of PF rollers 33. On the paper ejection side with respect to the platen 34, a pair of paper ejection rollers 35, similar to the pair of PF rollers 33, is provided. Driving force is transmitted from the PF motor 31 to a paper ejection drive roller 35 a of the pair of paper ejection rollers 35 and also to a PF drive roller 33 a. Note that the CR motor 22 and the PF motor 31 are DC motors.

In addition, as shown in FIG. 1, the rotary encoder 40, which may be regarded as a position detection unit, includes a disc-shaped scale 41 and a rotary sensor 42. Of these elements, the disc-shaped scale 41 has a light transmitting portion that transmits light therethrough and a light blocking portion that blocks transmission of light. The light transmitting portion and the light blocking portion are arranged along the circumferential direction of the disc-shaped scale 41 at constant intervals. The disc-shaped scale 41 is rotated by the PF motor 31.

The rotary sensor 42 has a light emitting element (not shown) and a light receiving element (not shown) as main components. Of these elements, the light emitting element is, for example, formed of a member, such as a light emitting diode, that is capable of emitting light. In addition, a collimator lens (not shown) is located between the light emitting element and the light receiving element. Then, light emitted from the light emitting element passes through the collimator lens to be shaped into parallel rays of light and then enters into the disc-shaped scale 41.

On the other hand, light input into the light receiving element is converted into an electrical signal through a predetermined photoelectric conversion and is then processed in a signal processing circuit (not shown). After that, the processed signal is output to a comparator (not shown). The comparator compares each of the input signals and, on the basis of the comparison, outputs pulse signals shown in FIG. 3A and FIG. 3B (A-phase ENC signal, B-phase ENC signal; corresponding to detection signals). Here, the output A-phase ENC signal and the output B-phase ENC signal are different in phase by 90 degrees from each other. Therefore, when the CR motor 22 is in a forward rotation (when the carriage 21 is moving in a direction away from a home position), the A-phase ENC signal is advanced in phase by 90 degrees relative to the B-phase ENC signal. On the other hand, when the CR motor 22 is in a reverse rotation, the A-phase ENC signal is retarded in phase by 90 degrees relative to the B-phase ENC signal.

The linear encoder 50 has a linear scale 51 that extends along the auxiliary scanning direction of the printer 10 and a photosensor (linear sensor) 52 similar to the above described rotary encoder 40. Because the linear encoder 50 has the similar structure to the rotary encoder 40 except that the linear scale 51 is formed long, a specific description thereof is omitted.

Note that the printer 10, other than the above described components, further includes other various sensors, such as a paper width detection sensor that detects the width of the printed medium P and a gap detection sensor that detects a distance between the print head 28 and the platen 34.

The control unit 100 will now be described with reference to FIG. 4, FIG. 5, and the like. The control unit 100 is a portion that executes various controls. The control unit 100 receives various output signals from the rotary sensor 42, the linear sensor 52, the paper width detection sensor (not shown), the gap detection sensor (not shown), a power switch that turns on/off the printer 10, or the like.

As shown in FIG. 1, the control unit 100 includes a CPU 101, a ROM 102, a RAM 103, a PROM 104, an ASIC 105, a motor driver 106, and the like, which are connected through a transmission line 107, such as a bus, for example. By cooperation between these hardware and software and/or data stored in the ROM 102 or the PROM 104, or by adding a circuit or component that executes a specific processing, or the like, the configuration (a speed control unit 120) shown in the block diagram of FIG. 4, the configuration (a position control unit 140) shown in the block diagram of FIG. 5, a position calculation unit (mainly corresponds to position calculation units 121 and 141), a speed calculation unit (mainly corresponds to speed calculation units 122 and 142) and a switching unit (mainly corresponds to the CPU 101) are functionally implemented.

In addition, the CPU 101 switches a control unit to perform control between the speed control unit 120 and the position control unit 140. The switching is performed in such a manner that the CPU 101 loads a predetermined program or data from the ROM 102 or the PROM 104. More specifically, the CPU 101 receives a signal that indicates a current position and that is calculated by the position calculation unit (similar to the position calculation unit 121 shown in FIG. 4 and the position calculation unit 141 shown in FIG. 5) of the ASIC 105. Then, in the CPU 101, it is determined on the basis of the signal that indicates the current position whether a switching position that is a predetermined distance from a target stop position (see FIG. 6) is reached. When it is determined that it is reached, the control of the PF motor 31 is switched from a control based on the speed control unit 120 shown in FIG. 4 to a control based on the position control unit 140.

As shown in FIG. 4, the speed control unit 120 includes the position calculation unit 121, the speed calculation unit 122, a first subtraction unit 123, a target speed generating unit 124, a second subtraction unit 125, a proportional element 126, an integral element 127, a derivative element 128, a proportional correction unit 129, an integral correction unit 130, a derivative correction unit 131, an addition unit 132, and a PWM signal output unit 133.

Of these elements, the position calculation unit 121 counts edges of an output signal (see FIG. 3A and FIG. 3B), which is a rectangular wave, input from the rotary sensor 42 to calculate the amount by which a printed medium P (which may be regarded as a transported object) is fed. In addition, the speed calculation unit 122 counts edges of an output signal, which is a rectangular wave, input from the rotary sensor 42, and receives a signal related to time (period) measured by a timer (not shown). Then, the speed calculation unit 122 calculates a speed, at which a printed medium P is fed, on the basis of the counted edges and time (period).

The first subtraction unit 123 subtracts a current position from a target position (target stop position) on the basis of information regarding the amount of feeding output from the position calculation unit 121 (current position) and information regarding a target position output from a memory such as the ROM 102 or the PROM 104 to thereby calculate a positional deviation. The target speed generating unit 124 receives information regarding a positional deviation output from the first subtraction unit 123. Then, the target speed generating unit 124 outputs information regarding a target speed in accordance with the positional deviation. Note that the information regarding the target speed contains a speed table shown in FIG. 6.

The second subtraction unit 125 subtracts a current feeding speed of the PF motor 31 (current speed) from the target speed, calculates a speed deviation ΔV, and outputs the speed deviation ΔV to the proportional element 126, the integral element 127 and the derivative element 128. The proportional element 126, the integral element 127 and the derivative element 128 calculate a proportional control value QP, an integral control value QI and a derivative control value QD on the basis of the input speed deviation ΔV as follows.

QP(j)=ΔV(j)×Kp   Expression (1)

QI(j)=QI(j−1)+ΔV(j)×Ki   Expression (2)

QD(j)={ΔV(j)−ΔV(j−1)}×Kd   Expression (3)

Where j is time, Kp is a proportional gain, Ki is an integral gain, and Kd is a derivative gain.

In addition, the proportional correction unit 129 receives the proportional control value QP of Expression (1) from the proportional element 126 and a corrected integral control value QI′ from the integral correction unit 130. The proportional correction unit 129 compares the proportional control value QP from the proportional element 126 with a value that is obtained by multiplying the corrected integral control value QI′ from the integral correction unit 130 by a predetermined ratio (for example, 0.95). When the proportional control value QP is smaller than the value that is obtained by multiplying the corrected integral control value QI′ by a predetermined ratio, the proportional correction unit 129 outputs the proportional control value QP to the addition unit 132, whereas when the value that is obtained by multiplying the corrected integral control value QI′ by a predetermined ratio is smaller than the proportional control value QP, the proportional correction unit 129 outputs the obtained value to the addition unit 132.

The derivative correction unit 131 receives the derivative control value QD from the derivative element and also receives the corrected integral control value QI′ from the integral correction unit 130. The derivative correction unit 131 compares the derivative control value QD from the derivative element 128 with a value that is obtained by multiplying the corrected integral control value QI′ from the integral correction unit 130 by a predetermined ratio (for example, 0.95). When the derivative control value QD is smaller than the value that is obtained by multiplying the corrected integral control value QI′ by a predetermined ratio, the derivative correction unit 131 outputs the derivative control value QD to the addition unit 132, whereas when the value that is obtained by multiplying the corrected integral control value QI′ by a predetermined ratio is smaller than the derivative control value QD, the derivative correction unit 131 outputs the obtained value to the addition unit 132.

Furthermore, the integral correction unit 130 of the present embodiment outputs a signal input from the integral element 127 to the addition unit 132 without any calculation.

The addition unit 132 adds up the control values output from the proportional correction unit 129, the integral correction unit 130 and the derivative correction unit 131, and outputs the resultant sum of the control values, obtained through addition, to the PWM signal output unit 133. The PWM signal output unit 133 outputs a PWM signal having a duty ratio that is obtained through converting the sum of the control values supplied from the addition unit 132. Note that the PWM signal output unit 133 has a set upper limit value of a duty ratio and, when a duty ratio obtained through converting the control values exceeds the upper limit value (for example, 95 percent), outputs a duty ratio of the upper limit value.

The motor driver 106 controls driving the PF motor 31 using PWM control on the basis of a PWM signal output from the PWM signal output unit 133.

As shown in FIG. 5, the position control unit 140 includes the position calculation unit 141, the speed calculation unit 142, a first subtraction unit 143, a positional gain multiplication unit 144, a third subtraction unit 145, a proportional element 146, an integral element 147, a derivative element 148, a proportional correction unit 149, an integral correction unit 150, a derivative correction unit 151, an addition unit 152 and a PWM signal output unit 153.

Of these elements, the position calculation unit 141, the speed calculation unit 142, the first subtraction unit 143, the proportional element 146, the integral element 147, the derivative element 148, the proportional correction unit 149, the integral correction unit 150, the derivative correction unit 151, the addition unit 152 and the PWM signal output unit 153 are similar to the corresponding configurations (the position calculation unit 121, the speed calculation unit 122, the first subtraction unit 123, the proportional element 126, the integral element 127, the derivative element 128, the proportional correction unit 129, the integral correction unit 130, the derivative correction unit 131, the addition unit 132, and the PWM signal output unit 134) of the above described speed control unit 120, so that a description thereof is omitted.

The positional gain multiplication unit 144 calculates a value that is obtained by multiplying a positional deviation ΔL(=target stop position−current position), which is calculated by the first subtraction unit 143, by a predetermined positional gain. The third subtraction unit 145 subtracts a current speed from the value calculated in the first subtraction unit 143 to calculate a deviation ΔH. Where a positional gain is G, a current speed is V, and a current period is T, the deviation ΔH is expressed as follows.

ΔH=ΔL(j)×G−V(j)   Expression (4)

=ΔL(j)×G−1/T(j)

Control Method for PF Motor 31

The control method for the PF motor 31 in the printer 10 that includes the above described configuration will be described.

While the power of the printer 10 is on, as a driving instruction is issued from the CPU 101 to the PF motor 31 to, for example, perform printing, or the like, the PF motor 31 is driven in accordance with the speed table shown in FIG. 6. Then, the CPU 101 initially instructs the speed control unit 120 to control driving of the PF motor 31. Thus, the PF motor 31 is driven through speed PID control on the basis of a speed deviation ΔV between a target speed and a current speed. That is, the PF motor 31 is PID controlled so as to conform to the speed table of the target speed shown in FIG. 6.

Then, the speed PID control is performed in an acceleration region and constant speed region of the PF motor 31, and in a deceleration region as well, the speed PID control is performed until immediately before the switching position shown in FIG. 6 (left side, a portion indicated by solid line in FIG. 6).

In addition, for driving the PF motor 31, the CPU 101 receives a signal that indicates a current position and that is calculated in the position calculation unit (similar to the position calculation unit 121 shown in FIG. 4, and the like) of the ASIC 105. Then, in the CPU 101, it is determined on the basis of the signal that indicates the current position whether the switching position that is a predetermined distance before the target stop position (see FIG. 6) is reached. That is, the CPU 101 determines whether the counted value in the position calculation unit reaches a predetermined value. Note that the switching position is set so as to be included in the deceleration region in the speed table. In addition, when the CPU 101 determines that the counted value in the position calculation unit reaches a predetermined value, a specific control at the time of switching, which will be described later, is performed.

In the above determination, when it is determined that the switching position is reached, the CPU 101 switches the control of the PF motor 31 from a control based on the speed control unit 120 to a control based on the position control unit 140.

Then, after switching, the deviation ΔH is calculated on the basis of Expression (4). As is apparent from Expression (4), and the like, after switching, the positional deviation ΔL gradually decreases as the PF motor 31 rotates. In addition, generally, PID control is performed so that a deviation becomes 0 (zero). Thus, in the positional PID control of the above Expression (4), as the positional deviation ΔL decreases, a current speed for canceling (zeroing) the positional deviation ΔL also decreases. Note that after switching, driving control will not be based on the speed table, in FIG. 6, the relationship between a speed and a position after switching is indicated by broken lines as an imaginary one.

Incidentally, when the positional deviation ΔL becomes 0 (zero) through rotation of the PF motor 31(that is, when the current position is a target stop position and the target stop position is reached), when the current speed is 0 (zero), the deviation ΔH is 0 (zero), so that the output from the PWM signal output unit 153 becomes 0 (zero) and thereby the PF motor 31 continues to stop. On the other hand, when the current speed at the time when the positional deviation ΔL is 0 (zero) is not 0 (zero), the output based on the positional PID control, which is directed to cause the deviation ΔH to be 0 (zero) is supplied from the PWM signal output unit 153. Thus, finally, even after the deviation ΔH once becomes 0 (zero), it is possible to maintain the deviation ΔH at 0 (zero).

In this way, driving control of the PF motor 31 is performed, and the stop position thereof is highly accurate with respect to a target stop position.

Specific Control at the Time of Switching

As shown in FIG. 6, when the control is switched from the speed PID control to the positional PID control, if there is a difference (a difference in deviation) between a speed deviation and a positional deviation, speed is disturbed to fluctuate at the time of switching. This state is shown in FIG. 7A and FIG. 7B. FIG. 7A and FIG. 7B show changes in duty and fluctuations in speed when a deviation after switching is 1.5 times as large as a deviation before switching.

As shown in FIG. 7A and FIG. 7B, when the deviation becomes 1.5 times the previous deviation, it is equivalent to a state in which a large deviation occurs immediately after switching. Thus, the value of a duty ratio increases in order to cancel the large deviation (see FIG. 7A). For this reason, the speed immediately after switching is disturbed to fluctuate toward a direction to increase. Note that the ordinate axes in FIG. 7A, FIG. 8A and FIG. 9A represent a value of a duty ratio (unit: cnt; 5000 cnt corresponds to duty 100 percent), and the ordinate axes in FIG. 7B, FIG. 8B and FIG. 9B represent a value of a speed (unit: IPS; inch per second).

On the other hand, FIG. 8A and FIG. 8B show changes in duty and fluctuations in speed when a deviation after switching is 0.5 times as large as a deviation before switching. As shown in FIG. 8A and FIG. 8B, when the deviation becomes 0.5 times the previous deviation, it is equivalent to a state in which a previously existing deviation suddenly becomes a small deviation immediately after switching. Thus, the value of a duty ratio sharply decreases in order to respond to the sharp decrease in deviation (see FIG. 8A). For this reason, the speed immediately after switching is disturbed to fluctuate toward a direction to decrease.

In contrast, FIG. 9A and FIG. 9B show changes in duty and fluctuations in speed when a difference between a deviation before switching and a deviation immediately after switching is 0. Here, where the target speed is Vt, the current speed is Vc, the target position is Pt, the current position is Pc, and the positional gain is G,

the speed deviation ΔV is expressed as ΔV=(Vt−Vc)   Expression (5), and

the positional deviation ΔH is expressed as ΔH=(Pt−Pc)×G−Vc   Expression (6).

When a difference between a deviation obtained through Expression (5) and a deviation obtained through Expression (6) is 0,

ΔV−ΔH=0   Expression (7)

(Vt−Vc)=(Pt−Pc)×G−Vc

∴G=Vt/(Pt−Pc)   Expression (8)

When the gain G is adjusted so as to satisfy the above condition, it is possible to zero a difference between deviations before and immediately after switching from the speed PID to the positional PID. Note that in the above Expression (7), when K (K is not 1 at this time) that satisfies ΔV−K·ΔH =0 realizes variations in speed shown in FIG. 9B, the positional gain G that satisfies Expression (7) may be used to perform control.

Note that FIG. 10 shows results (the unit is ¼EP; EP is encoder pulse) regarding the accuracy of a stop position when a difference between deviations before and after switching is 0 or when a deviation after switching is as large as 0.5 times or 1.5 times as large as a deviation before switching, as shown in FIG. 7A to FIG. 9B. As shown in FIG. 10, the accuracy of a stop position of the PF motor 31 is clearly higher when a difference between deviations is 0 than when a difference between deviations is 0.5 times or when a difference between deviations is 1.5 times.

Advantageous Effects According to the Aspects of the Invention

According to the above configured printer 10, the PF motor 31 is switched by the CPU 101 from a feedback control using the speed control unit 120 to a feedback control using the position control unit 140. Thus, it is possible to obtain a favorable stop position accuracy of the PF motor 31. In addition, because control is performed using the position control unit 140 after switching, even when a load fluctuates, it is possible to obtain a favorable stop position accuracy.

Moreover, in the present embodiment, as the CPU 101 determines that a switching position that is a predetermined distance before a target stop position is reached, the CPU 101 switches from control of the PF motor 31 using the speed control unit 120 to control using the position control unit 140. Thus, when based on detection of a position, it is possible to reliably switch from the speed control unit 120 to the position control unit 140.

Furthermore, in the position control unit 140, positional PID control is performed on the PF motor 31. Thus, it is possible to obtain a high stop position accuracy of the PF motor 31. In addition, the positional PID control is less affected by disturbance and allows eliminating a residual deviation between a current position and a target stop position. Thus, it is possible to maintain the PF motor 31 being stopped at the target stop position.

In addition, in the speed control unit 120, speed PID control is performed on the PF motor 31. Thus, while the PF motor 31 is being controlled by the speed control unit 120, the PF motor 31 hardly oscillates particularly in a constant speed region, so that it is possible to stabilize the behavior of the PF motor 31. In addition, the speed PID control is less affected by disturbance, and allows eliminating a residual deviation between a current speed and a target speed. Thus, it is possible to drive the PF motor 31 at a target speed.

In addition, in the present embodiment, as shown in Expression (4), the position control unit 140, after calculating a current position, calculates a value that is obtained by multiplying a positional deviation ΔL between a target stop position and the current position by a predetermined positional gain, and then controls the PF motor 31 using PID control on the basis of a deviation ΔH that is obtained by subtracting the current speed from the above obtained value. Thus, because the deviation ΔH includes a positional deviation, it is possible to obtain a favorable stop position accuracy of the PF motor 31.

Furthermore, in the present embodiment, the CPU 101 switches control of the PF motor 31 using the speed control unit 120 to control using the position control unit 140 in a deceleration region of the PF motor 31. Thus, it is possible to suppress oscillation in driving of the PF motor 31, which tends to occur when switching to the position control unit 140, in a speed constant region of the speed table. In addition, it is possible to achieve a highly accurate stop of the PF motor 31 by gradually reducing power applied to the PF motor 31.

In addition, as described above, because the feedback control using the speed control unit 120 is switched to the feedback control using the position control unit 140 to make it possible to obtain a favorable stop position accuracy of the PF motor 31, it is possible to obtain favorable print quality on a printed medium P.

Particularly, the printer 10 is able to perform printing on a large-sized printed medium P larger than A3 size. Thus, it is possible to obtain a favorable stop position accuracy for a large-sized printed medium P of which a tension or a load at the time of transporting is particularly large. Here, in the position control, a printed medium P may be moved back and forth with respect to a target stop position in order to stop the PF motor 31 at the target stop position, and this may cause a deviation from the target stop position when the printed medium P is moved back and forth because of a mechanical transport deviation, a tension, or the like. In the present embodiment, by reducing a difference between deviations when switching from the speed control to the position control, it is possible to minimize the above described back and forth movement. Thus, for a large-sized printed medium P, it is possible to particularly obtain favorable print quality.

In addition, in the position control unit 140 and the speed control unit 120, gains in both the control units 120 and 140 are adapted to each other. Thus, fluctuations in speed of the PF motor 31 at the time of switching from the speed control to the position control are reduced, so that it is possible to obtain a favorable stop position accuracy of the PF motor 31. In addition, with the favorable stop position accuracy, it is possible to obtain favorable print quality.

Furthermore, the above adaptation is performed on the basis of adjustment of a deviation in the position control unit 140 with a deviation in the speed control unit 120. Thus, it is possible to reduce fluctuations in speed of the PF motor 31 at the time of switching the control.

Alternative Embodiments

The embodiment of the invention is described above, but it may be modified into various alternative embodiments. Hereinafter, the alternative embodiments will be described.

In the above embodiment, the control unit 100 includes the CPU 101 and the ASIC 105. However, the control unit 100 may be configured so that only the ASIC 105 governs the control of the PF motor 31, or the control unit 100 may also be configured so that the above CPU 101 and ASIC 105 are combined with a one-chip microcomputer including various built-in peripheral devices, or the like.

In addition, in the above embodiment, for the PF motor 31, control using the speed control unit 120 is switched to control using the position control unit 140. The switching of control is not only applied to the PF motor 31, but it may also be applied to other motors. The other motors include, for example, a CR motor, a pump motor that drives a pump for vacuuming the print head 28, and other motors provided where necessary, such as a paper feed motor, a platen gap motor, or the like.

Furthermore, in the above embodiment, the speed control unit 120 and the position control unit 140 are configured to perform PID control. However, control of the PF motor 31 is not limited to PID control. Control other than the PID control includes feedback control, such as PI control, PD control or P control, and another control that uses feedforward control and feedback control in combination.

In addition, in the above embodiment, the switching position is placed only in the deceleration region of the speed table. However, for example, a portion in which control is performed using the position control unit 140 may be provided in the acceleration region, after that, control may be switched to the control using the speed control unit 120 before the constant speed region is reached (this switching portion corresponds to a first switching position), and control may be again switched to the control using the position control unit 140 at a portion in the deceleration region (this switching portion corresponds to a second switching position).

In addition, in the above embodiment, it is determined whether the switching position is reached, and then control is switched from the control using the speed control unit 120 to the control using the position control unit 140. However, the switching of control may not depend upon whether the switching position is reached but depend upon another trigger (for example, whether predetermined time has elapsed). In addition, in the above embodiment, the motor control device is applied to the printer 10. However, the motor control device is not limited to application to a printer; it may be applied to various apparatuses (for example, scanner or digital camera) that uses a motor.

In addition, in the above embodiment, only a combination of the speed PID control and the positional PID control is described; however, an open control may be combined. In addition, in the above embodiment, in the speed control unit 120 and the position control unit 140, control of the PF motor 31 is performed using PID control. However, even with PI control in place of PID control, it is possible to implement control to obtain a favorable stop position accuracy of the PF motor 31 to thereby make it possible to obtain favorable print quality.

The entire disclosure of Japanese Patent Application Nos: 2007-225314, filed Aug. 31, 2007 and 2008-184640, filed Jul. 16, 2008 are expressly incorporated by reference herein. 

1. A printer comprising: a motor that generates a driving force by which a transported object is transported; a position calculation unit that calculates a current position of the transported object through driving the motor; a speed calculation unit that calculates a current speed of the transported object through driving the motor; a position control unit that controls the motor using at least PI control on the basis of the current position calculated by the position calculation unit and a target position; a speed control unit that controls the motor using at least PI control on the basis of the current speed calculated by the speed calculation unit and a target speed; and a switching unit that switches from control of the motor using the speed control unit to control of the motor using the position control unit at a position that is a predetermined distance before a target stop position to which the motor is driven.
 2. The printer according to claim 1, wherein in the position control unit and the speed control unit, gains in both the control units are adapted to each other.
 3. The printer according to claim 2, wherein the adaptation is performed on the basis of adjustment of a deviation in the position control unit with a deviation in the speed control unit.
 4. The printer according to claim 1, wherein the switching unit switches from control of the motor using the speed control unit to control of the motor using the position control unit when the current position calculated by the position calculation unit reaches a portion that is a predetermined distance from the target stop position.
 5. The printer according to claim 1, wherein the transported object is a printed medium having a size that is at least larger than or equal to A3 size.
 6. A drive control method for controlling a motor that generates a driving force by which a transported object is transported, the drive control method comprising: controlling the motor using at least PI control on the basis of a current speed of the transported object calculated by a speed calculation unit and a target speed; detecting whether a portion that is a predetermined distance before a target stop position to which the motor is driven is reached; and controlling the motor using at least PI control on the basis of a current position of the transported object calculated by a position calculation unit and a target position when it is detected that the position that is a predetermined distance before the target stop position is reached.
 7. A computer readable storage medium storing a motor control program for a printer, the program comprising instructions for: calculating a current position of a transported object through driving a motor that generates a driving force by which a transported object is transported; calculating a current speed of the transported object through driving the motor; controlling the motor using at least PI control on the basis of the calculated current position and a target position; controlling the motor using at least PI control on the basis of the calculated current speed and a target speed; and switching from control of the motor using at least PI control on the basis of the calculated current speed and the target speed to control of the motor using the calculated current position and the target position at a portion that is a predetermined distance before a target stop position to which the motor is driven. 